Organizations typically automate their business processes to manage their operations. A business process includes a series of activities that are undertaken to perform the operations of an organization. For example, a business process may describe activities for processing a sales order, such as the steps of receiving a sales order, checking the payment history, checking the inventory, and so on. An organization may automate a business process by having a computer perform some activities such as receiving a sales order. A business process may also be automated by having a computer remind human participants of activities that need to be performed. For example, a computer may send an email message notifying an account manager to check the payment history of a client.
Automating business processes, however, has posed challenges. Designing automated business processes involves the use of software programs, which business process designers may find difficult to use. Moreover, testing automated business processes requires performing trial runs of a business process, which may be difficult to do without disrupting the actual users of the business process. Consequently, automating business processes has posed challenges.